/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package com.nys.conci.backend.entidad;

import com.nys.conci.base.utilitario.SessionWrapper;
import java.io.Serializable;
import java.math.BigDecimal;
import javax.ejb.Stateful;
import javax.enterprise.context.SessionScoped;

/**
 *
 * @author Yeudy10
 */
@Stateful
@SessionScoped
public class InformacionUsuario  implements SessionWrapper,Serializable{
    //Definición de variables
    
    private String id_usuario;
    
    private String password;
    
    private String nombre_usuario;           
    
    private String tipo_usuario;
    
    private Long tiempoUltimaSolicitud;
    
    private Boolean autentificado;
    
    private String browser;


    @Override
    public String getUsuario() {
        return id_usuario;
    }

    @Override
    public void setUsuario(String usuario) {
        this.id_usuario = usuario;
    }

    @Override
    public Long getTiempoUltimaSolicitud() {
        return tiempoUltimaSolicitud;
    }

    @Override
    public void setTiempoUltimaSolicitud(Long tiempoUltimaSolicitud) {
        this.tiempoUltimaSolicitud = tiempoUltimaSolicitud;
    }

    @Override
    public Boolean isAutentificado() {
        return autentificado;
    }

    @Override
    public void setAutentificado(Boolean autentificado) {
        this.autentificado = autentificado;
    }

    @Override
    public String getNombre() {
        return nombre_usuario;
    }

    @Override
    public void setNombre(String nombre) {
        this.nombre_usuario = nombre;
    }

    /**
     * @return the browser
     */
    public String getBrowser() {
        return browser;
    }

    /**
     * @param browser the browser to set
     */
    public void setBrowser(String browser) {
        this.browser = browser;
    }
    
    /**
     * Enumerado con el listado de estados en los que puede estar la información
     * del usuario.
     */
    public enum Estado{
        ACTIVO("A");
        public final String estado;
        
        Estado(String e){
            this.estado = e;
        }
    }
    
    /**
     * Constructor por defecto
     */
    public InformacionUsuario(){
        autentificado = false;
    }
    
    /**************************
    * Definicion de get/set ***
    ***************************/
    
 
    public String getNombre_usuario() {
        return nombre_usuario;
    }

    public void setNombre_usuario(String nombre_usuario) {
        this.nombre_usuario = nombre_usuario;
    }   

    public String getId_usuario() {
        return id_usuario;
    }

    public void setId_usuario(String id_usuario) {
        this.id_usuario = id_usuario;
   }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }

    public Boolean getAutentificado() {
        return autentificado;
    }

    public String getTipo_usuario() {
        return tipo_usuario;
    }

    public void setTipo_usuario(String tipo_usuario) {
        this.tipo_usuario = tipo_usuario;
    }
                    

    

    @Override
    public boolean equals(Object obj) {
        if (obj == null) {
            return false;
        }
        if (getClass() != obj.getClass()) {
            return false;
        }
        final InformacionUsuario other = (InformacionUsuario) obj;
        if ((this.nombre_usuario == null) ? (other.nombre_usuario != null) : !this.nombre_usuario.equals(other.nombre_usuario)) {
            return false;
        }
        return true;
    }

    @Override
    public int hashCode() {
        int hash = 5;
        hash = 37 * hash + (this.nombre_usuario != null ? this.nombre_usuario.hashCode() : 0);
        return hash;
    }
    
}
